16f9185562fc0fefdfe905f6a582b8bc3ae7dd1c,src/com/redhat/ceylon/compiler/java/codegen/ExpressionTransformer.java,ExpressionTransformer,transformComprehension,#Comprehension#,1679
Before Change
ListBuffer<JCStatement> innerBody = new ListBuffer<JCStatement>();
if (idx>0) {
innerBody.add(make().If(make().Binary(JCTree.EQ,
make().Apply(null, makeSelect("this", prevItemVar), List.<JCExpression>nil()), makeBoolean(true)),
make().Block(0, List.<JCStatement>of(
make().Exec(make().Assign(makeUnquotedIdent(iterVar),
make().Apply(null, makeSelect("this", iterVar), List.<JCExpression>nil()))),
After Change
fields.add(make().VarDef(make().Modifiers(2), names().fromString(iterVar), iterTypeExpr, null));
JCBlock body = make().Block(0l, List.<JCStatement>of(
make().If(make().Binary(JCTree.EQ, makeUnquotedIdent(iterVar), makeNull()),
make().Exec(make().Apply(null, makeSelect("this", ctxtName), List.<JCExpression>nil())),
null),
make().Exec(make().Assign(makeUnquotedIdent(iterVar), make().Apply(null,
make().Select(transformExpression(specexpr.getExpression()),